package com.example.aigc_education.repository;

import com.example.aigc_education.domain.dto.ThemeStudyTimeDTO;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.repository.MongoRepository;

import java.time.LocalDate;
import java.util.List;

public interface ThemeStudyTimeRepository extends MongoRepository<ThemeStudyTimeDTO, String> {

    /**
     * 根据主题id和今天时间来定位文档
     * 用于插入新的学习时间文档以及更新学习时间文档
     *
     * @param themeId   主题id
     * @param today     今天
     * @return          DTO
     */
    ThemeStudyTimeDTO findByThemeIdAndToday(Long themeId, LocalDate today);

    /**
     * 根据主题id查询主题学习时间
     *
     * @param themeId   主题id
     * @param sort      排序条件查询
     * @return          List<DTO>
     */
    List<ThemeStudyTimeDTO> findByThemeId(Long themeId, Sort sort);
}
